#!usr/bin/env python  
#@time: 2018/02/27 
#读取邮件
import poplib
import email

from email.header import decode_header

read = poplib.POP3('pop.sina.com')
read.user('xiedongji66@sina.com')
read.pass_('xiedongji123')

count = read.stat() #这里返回的是邮箱基本统计信息
content  = read.top(count[0],0)#服务器将返回由参数标识的邮件前10行内容，最后str为一个列表，有三个元素
# print(content)

tmpMailContent = []
# print(content[1])

for x in content[1]: #其中str[1],也就是str中的第2个参数为第一封邮件的各种信息，这里要进行编码
    try:
        tmpMailContent.append(x.decode())
    except:
        try:
            tmpMailContent.append(x.decode('gbk'))
        except:
            tmpMailContent.append(x.decode('big5'))

msg = email.message_from_string('\n'.join(tmpMailContent))  #这个方法能把String的邮件转换成email.message实例
title = decode_header(msg['subject'])
# print(msg)
# print(title)

if title[0][1]: #如果有第二个元素 说明有编码信息
    titleTxt = title[0][0].decode(title[0][1])
else:
    titleTxt = title[0][0]

print(titleTxt)